////https://www.luogu.com.cn/problem/P2887
//
//#include<iostream>
//#include<algorithm>
//using namespace std;
//
//const int N = 2510;
//struct cow
//{
//	int left;
//	int right;
//}r[N];
//
//struct fss
//{
//	int num;
//	int n;
//}x[N];
//
//bool cmp1(cow& a, cow& b)
//{
//	return a.left > b.left;
//}
//bool cmp2(fss& a, fss& b)
//{
//	return a.n > b.n;
//}
//
//int main()
//{
//	int c = 0, l = 0;
//	cin >> c >> l;
//	for (int i = 0; i < c; i++)
//		cin >> r[i].left >> r[i].right;
//	for (int i = 0; i < l; i++)
//		cin >> x[i].n >> x[i].num;
//
//	sort(r, r + c, cmp1);
//	sort(x, x + l, cmp2);
//
//	int ret = 0;
//	for (int i = 0; i < c; i++)
//	{
//		int left = r[i].left;
//		int right = r[i].right;
//		for (int j = 0; j < l; j++)
//		{
//			if (x[j].num != 0 && x[j].n >= left && x[j].n <= right)
//			{
//				ret++;
//				x[j].num--;
//				break;
//			}
//			else if (x[j].n < left)
//				break;
//		}
//	}
//	cout << ret;
//	return 0;
//}